package com.zm.blog.aop;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 保存校验注解<br>
 * 用于标记在数据保存/提交前需要进行额外校验的方法
 *
 * 典型应用场景：
 * 1. 表单提交前的完整性校验
 * 2. 数据入库前的业务规则校验
 * 3. 敏感操作前的二次确认
 *
 * 使用示例：
 * {@code
 * @SaveCheck
 * public void saveUser(User user) {
 *     // 保存用户逻辑
 * }
 * }
 */
@Target(ElementType.METHOD)              // 指定该注解只能用于方法上
@Retention(RetentionPolicy.RUNTIME)      // 指定注解在运行时可通过反射获取
public @interface SaveCheck {

    // 标记注解不需要任何属性

}
